Automatic Detection of Defects in Applications without Test Oracles

نویسندگان

  • Christian Murphy
  • Gail Kaiser
چکیده

In application domains that do not have a test oracle, such as machine learning and scientific computing, quality assurance is a challenge because it is difficult or impossible to know in advance what the correct output should be for general input. Previously, metamorphic testing has been shown to be a simple yet effective technique in detecting defects, even without an oracle. In metamorphic testing, the application’s “metamorphic properties” are used to modify existing test case input to produce new test cases in such a manner that, when given the new input, the new output can easily be computed based on the original output. If the new output is not as expected, then a defect must exist. In practice, however, metamorphic testing can be a manually intensive technique for all but the simplest cases. The transformation of input data can be laborious for large data sets, and errors can occur in comparing the outputs when they are very complex. In this paper, we present a tool called Amsterdam that automates metamorphic testing by allowing the tester to easily set up and conduct metamorphic tests with little manual intervention, merely by specifying the properties to check, configuring the framework, and running the software. Additionally, we describe an approach called Heuristic Metamorphic Testing, which addresses issues related to false positives and non-determinism, and we present the results of new empirical studies that demonstrate the effectiveness of metamorphic testing techniques at detecting defects in real-world programs without test oracles. Copyright c © 2010 John Wiley & Sons, Ltd.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Automatic Detection and Localization of Surface Cracks in Continuously Cast Hot Steel Slabs Using Digital Image Analysis Techniques

Quality inspection is an indispensable part of modern industrial manufacturing. Steel as a major industry requires constant surveillance and supervision through its various stages of production. Continuous casting is a critical step in the steel manufacturing process in which molten steel is solidified into a semi-finished product called slab. Once the slab is released from the casting unit, th...

متن کامل

آزمون های غیرمخرب در پیشرانه های جامد (علمی-ترویجی)

Non-destructive testing methods are used to detecting defects in materials and evaluation of materials properties without causing changes to their usable properties. They are applied in industry to provide the assurance of high quality for semi-manufactured products, final products, devices and materials. Except of many civilian applications they are widely used in rocket and aviation industry ...

متن کامل

Empirical Evaluation of Approaches to Testing Applications without Test Oracles

Software testing of applications in fields like scientific com-puting, simulation, machine learning, etc. is particularlychallenging because many applications in these domains haveno reliable “test oracle” to indicate whether the program’soutput is correct when given arbitrary input. A commonapproach to testing such applications has been to use a“pseudo-oracle”, in which...

متن کامل

THALLIUM-201 STRESS TEST IN 156 PATIENTS WITH SUSPECTED CORONARY ARTERY DISEASE

Currently, myocardial TI-201 scintigraphy is most often performed in conjunction with exercise stress testing in patients with suspected or known CAD. Stress thallium tests were performed for 156 patients with and without old myocardial infarctions complaining of chest pain. All of them underwent contrast coronary angiography. Perfusion defects were mostly manifested as reversible defects ...

متن کامل

Constraint Programming for Random Testing of a Trading System

Financial markets use complex computer trading systems whose failures can cause serious economic damage, making reliability a major concern. Automated random testing has been shown to be useful in finding defects in these systems, but its inherent test oracle problem (automatic generation of the expected system output) is a drawback that has typically prevented its application on a larger scale...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2010